import Main from '@/components/main'

/**
 * iview-admin中meta除了原生参数外可配置的参数:
 * meta: {
 *  hideInMenu: (false) 设为true后在左侧菜单不会显示该页面选项
 *  notCache: (false) 设为true后页面不会缓存
 *  access: (null) 可访问该页面的权限数组，当前路由设置的权限会影响子路由
 *  icon: (-) 该页面在左侧菜单、面包屑和标签导航处显示的图标，如果是自定义图标，需要在图标名称前加下划线'_'
 *  beforeCloseName: (-) 设置该字段，则在关闭当前tab页时会去'@/router/before-close.js'里寻找该字段名对应的方法，作为关闭前的钩子函数
 * }
 */

export default [
  {
    path: '/login',
    name: 'login',
    meta: {
      title: 'Login - 登录',
      hideInMenu: true
    },
    component: () => import('@/view/login/login.vue')
  },
  {
    path: '/',
    name: '_home',
    redirect: '/home',
    component: Main,
    meta: {
      hideInMenu: true,
      notCache: true
    },
    children: [
      {
        path: '/home',
        name: 'home',
        meta: {
          hideInMenu: true,
          title: '首页',
          notCache: true,
          icon: 'md-home'
        },
        component: () => import('@/view/single-page/home')
      }
    ]
  },
  {
    path: '/',
    name: 'userlist',
    meta: {
      icon: 'ios-person-outline',
      title: '用户管理'
    },
    component: Main,
    children: [
      {
        path: 'userlist',
        name: '用户管理',
        meta: {
          icon: 'ios-person-outline',
          title: '用户列表',
          notCache: true
        },
        component: () => import('@/view/userlist/userlist.vue')
      }
    ]
  },
  {
    path: '/',
    name: 'order',
    meta: {
      icon: 'md-document',
      title: '订单流水'
    },
    component: Main,
    children: [
      {
        path: 'Consumptionflow',
        name: '消费流水',
        meta: {
          title: '消费流水',
          notCache: true
        },
        component: () => import('@/view/order/Consumptionflow.vue')
      },
      {
        path: 'Repayingflow',
        name: '还款流水',
        meta: {
          title: '还款流水',
          notCache: true
        },
        component: () => import('@/view/order/Repayingflow.vue')
      }
    ]
  },
  {
    path: '/',
    name: 'userinfo',
    meta: {
      icon: 'ios-person-outline',
      title: '当前用户信息',
      hideInMenu: true
    },
    component: Main,
    children: [
      {
        path: 'user/:id',
        name: '当前用户信息',
        meta: {
          notCache: true
        },
        component: () => import('@/view/userinfo/userinfo.vue')
      }
    ]
  },
  {
    path: '/',
    name: 'orderinfo',
    meta: {
      title: '还款详情',
      hideInMenu: true
    },
    component: Main,
    children: [
      {
        path: 'orderinfo/:id',
        name: '还款详情',
        meta: {
          notCache: true
        },
        component: () => import('@/view/orderinfo/orderinfo.vue')
      }
    ]
  },
  {
    path: '/',
    name: 'setting',
    meta: {
      icon: 'ios-settings-outline',
      title: '系统设置'
    },
    component: Main,
    children: [
      {
        path: 'basesetting',
        name: '基础设置',
        meta: {
          notCache: true
        },
        component: () => import('@/view/setting/basesetting.vue')
      },
      {
        path: 'consumptionsetting',
        name: '消费设置',
        meta: {
          notCache: true
        },
        component: () => import('@/view/setting/consumptionsetting.vue')
      },
      {
        path: 'repaysetting',
        name: '还款设置',
        meta: {
          notCache: true
        },
        component: () => import('@/view/setting/repaysetting.vue')
      },
      {
        path: 'sharesetting',
        name: '分享设置',
        meta: {
          notCache: true
        },
        component: () => import('@/view/setting/sharesetting.vue')
      }
    ]
  },
  {
    path: '/',
    name: 'resetPassword',
    meta: {
      title: '修改密码',
      hideInMenu: true
    },
    component: Main,
    children: [
      {
        path: '/resetPassword',
        name: '修改密码',
        meta: {
          notCache: true
        },
        component: () => import('@/view/resetpwd/resetpwd.vue')
      }
    ]
  },
  {
    path: '/401',
    name: 'error_401',
    meta: {
      hideInMenu: true
    },
    component: () => import('@/view/error-page/401.vue')
  },
  {
    path: '/500',
    name: 'error_500',
    meta: {
      hideInMenu: true
    },
    component: () => import('@/view/error-page/500.vue')
  },
  {
    path: '*',
    name: 'error_404',
    meta: {
      hideInMenu: true
    },
    component: () => import('@/view/error-page/404.vue')
  }
]
